Platform Explorer / Nuxeo Platform 2023.8

Extension point bundles

Documentation

The resourceBundles extension point allows to group resources by name.

Example:

    <bundle name="myapp">
        <resources>
            <resource>jquery.js</resource>
            <resource>foldable-box.js</resource>
            <resource>foldable-box.css</resource>
        </resources>
    </bundle>

Bundles support override and merging logics: another module can contribute to the same bundle:

    <bundle name="myapp">
        <resources append="true">
            <resource>my.css</resource>
        </resources>
    </bundle>

If the attribute append is not set, or set to false, resources will be overridden.

Pages and page elements should refer to resource bundle to allow pluggability.

Contribution Descriptors

  • Class: org.nuxeo.ecm.web.resources.core.ResourceBundleDescriptor

Existing Contributions

Contributions are presented in the same order as the registration order on this extension point. This order is displayed before the contribution name, in brackets.

  • nuxeo-platform-webapp-base-2023.8.13.jar /OSGI-INF/webresources-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
    
        <!-- main bundle with all basic includes -->
        <bundle name="dnd_common">
          <resources>
            <resource>jquery.client.js</resource>
            <resource>jquery.dnd-file-upload.js</resource>
            <resource>nxdropzone.js</resource>
            <resource>nxinternaldnd.js</resource>
          </resources>
        </bundle>
    
      </extension>
  • nuxeo-platform-webapp-core-2023.8.13.jar /OSGI-INF/theme-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
    
        <!-- main bundle with all basic includes -->
        <bundle name="nuxeo_includes">
          <resources>
            <resource>jsf.js</resource>
            <resource>fixjsfviewstate.js</resource>
            <resource>richfaces-jquery.js</resource>
            <resource>jquery-migrate.js</resource>
            <resource>richfaces.js</resource>
            <resource>richfaces-queue.js</resource>
            <resource>richfaces-base-component.js</resource>
            <resource>richfaces-fileupload.js</resource>
            <resource>widget-utils.js</resource>
            <resource>select2.js</resource>
            <resource>seam-remote.js</resource>
            <resource>foldable-box.js</resource>
            <!-- include JS used for D&D and tableSelection -->
            <resource>utils.js</resource>
            <!-- include JS for contextual menu -->
            <resource>jquery.fancybox.js</resource>
            <resource>jquery.fancybox.style.css</resource>
            <resource>jquery.tools.cookie.js</resource>
            <resource>fancybox-popup-utils.js</resource>
            <resource>contextmenu.js</resource>
            <resource>jquery.tools.focusfirst.js</resource>
            <resource>jquery.hotkeys.js</resource>
            <resource>jquery.ui.sortable.js</resource>
            <resource>sarissa-ie-workaround.js</resource>
            <resource>static-styles.css</resource>
            <resource>hideableAdminMessage.js</resource>
            <resource>accessKey.js</resource>
            <resource>jquery.nuxeo.doubleclickshield.js</resource>
            <resource>jquery.ambiance.js</resource>
            <resource>jquery.ambiance.css</resource>
            <resource>jquery.nuxeo.dropdown.js</resource>
            <resource>jquery.nuxeo.tipsy.init.js</resource>
            <resource>jquery.magnific-popup.js</resource>
            <resource>magnific-popup.css</resource>
            <resource>nuxeo-lightbox.js</resource>
            <resource>jquery.nuxeo.cv-lightbox.js</resource>
            <resource>nuxeo-documents-import.js</resource>
            <resource>fixmultipartajax.js</resource>
            <resource>confirm-alerts.xhtml</resource>
            <resource>DragAndDrop.js</resource>
            <resource>tableSelections.js</resource>
            <resource>customSeamRemotingWaiter.js</resource>
            <resource>default-contextmenu-actions.js</resource>
            <resource>safeEdit.xhtml</resource>
            <resource>tinymce.xhtml</resource>
            <resource>konami.xhtml</resource>
            <resource>doubleClick_shield.xhtml</resource>
            <resource>layout_dev_init.xhtml</resource>
            <resource>seam_remoting.xhtml</resource>
            <resource>automation.js</resource>
            <resource>nuxeo_javascript_context.xhtml</resource>
            <resource>nuxeo.js</resource>
            <resource>mobile-banner.js</resource>
          </resources>
        </bundle>
    
        <!-- Sass styles  -->
        <bundle name="nuxeo_sassCss">
          <resources>
            <resource>normalize.scss</resource>
            <resource>basics.scss</resource>
            <resource>buttons_and_actions.scss</resource>
            <resource>body.scss</resource>
            <resource>grids_and_widgets.scss</resource>
            <resource>navigation.scss</resource>
            <resource>forms.scss</resource>
            <resource>messages_and_tooltips.scss</resource>
            <resource>foldable_boxes.scss</resource>
            <resource>tabs_content.scss</resource>
            <resource>helpers.scss</resource>
            <resource>tables.scss</resource>
            <resource>richfaces_components.scss</resource>
            <resource>popups.scss</resource>
            <resource>breadcrumb.scss</resource>
            <resource>drag_and_drop.scss</resource>
            <resource>header.scss</resource>
            <resource>footer.scss</resource>
            <resource>polymer.scss</resource>
          </resources>
        </bundle>
    
        <bundle name="nuxeo_base">
          <resources>
            <resource>screen.css</resource>
          </resources>
        </bundle>
    
        <bundle name="nuxeo_dm">
          <resources>
            <resource>nuxeo_dm_specific.scss</resource>
          </resources>
        </bundle>
    
        <!-- isolated jquery dep independent of JSF -->
        <bundle name="jquery">
          <resources>
            <resource>jquery-standalone.js</resource>
          </resources>
        </bundle>
    
      </extension>
  • nuxeo-platform-imaging-jsf-2023.8.13.jar /OSGI-INF/theme-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>picture_book.css</resource>
          </resources>
        </bundle>
      </extension>
  • nuxeo-platform-ui-select2-2023.8.13.jar /OSGI-INF/theme-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>select2.css</resource>
            <resource>nuxeo-select2.scss</resource>
            <resource>nuxeo-select2.js</resource>
            <resource>nuxeo-select2-init.js</resource>
          </resources>
        </bundle>
      </extension>
  • nuxeo-platform-audio-jsf-2023.8.13.jar /OSGI-INF/theme-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>audio-player.js</resource>
          </resources>
        </bundle>
      </extension>
  • nuxeo-platform-rendition-web-2023.8.13.jar /OSGI-INF/theme-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>renditionDefinitions2Formatter.js</resource>
          </resources>
        </bundle>
      </extension>
  • nuxeo-platform-tag-web-2023.8.13.jar /OSGI-INF/tag-theme-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>tags2Formatter.js</resource>
          </resources>
        </bundle>
      </extension>
  • nuxeo-platform-video-jsf-2023.8.13.jar /OSGI-INF/theme-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>video-js.css</resource>
            <resource>video-js.nx.css</resource>
            <resource>videojs.thumbnails.css</resource>
            <resource>video-js.js</resource>
            <resource>video-player-util.js</resource>
            <resource>videojs.thumbnails.js</resource>
            <resource>platform_video.css</resource>
          </resources>
        </bundle>
      </extension>
  • nuxeo-platform-webapp-base-2023.8.13.jar /OSGI-INF/collection-theme-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>collections2Formatter.js</resource>
          </resources>
        </bundle>
      </extension>
  • nuxeo-routing-web-2023.8.13.jar /OSGI-INF/document-routing-nxthemes-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>documentRoutingGraph.js</resource>
            <resource>documentRoutingGraph.css</resource>
          </resources>
        </bundle>
      </extension>
  • nuxeo-user-oauth-2023.8.13.jar /OSGI-INF/oauth-themes-contrib.xml
    <extension point="bundles" target="org.nuxeo.ecm.platform.WebResources">
        <bundle name="nuxeo_includes">
          <resources append="true">
            <resource>popup-utils.js</resource>
          </resources>
        </bundle>
      </extension>